package com.ruoyi.web.controller;

import com.github.pagehelper.PageHelper;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.constant.UserConstants;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.ContactUs;
import com.ruoyi.common.core.domain.entity.QueryContactUs;
import com.ruoyi.common.core.domain.entity.SysMenu;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.service.IContactUsService;
import com.ruoyi.system.service.ISysMenuService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/home/contact")
public class ContactUsController extends BaseController {

    @Autowired
    private IContactUsService contactUsService;

    /**
     * 联系我们，提交数据
     *
     * @return
     */
    @PostMapping("/add")
    public AjaxResult add(@RequestBody ContactUs contact) {
        // 手动设置状态 0 有效
        contact.setStatus(0);
        return toAjax(contactUsService.insertContactUs(contact));
    }


    /**
     * 用户留言列表   需要用户登录
     *
     * @RequestBody 请求体数据
     *
     * @return
     */
    @PostMapping("/list")
    public TableDataInfo list(@RequestBody QueryContactUs query) {
        PageHelper.startPage(query.getPageNum(), query.getPageSize());
        List<ContactUs> messageList = contactUsService.selectAll(query);
        return getDataTable(messageList);

    }


//    @PreAuthorize("@ss.hasPermi('system:menu:add')")
//    @Log(title = "菜单管理", businessType = BusinessType.INSERT)
//    @PostMapping
//    public AjaxResult add(@Validated @RequestBody SysMenu menu)
//    {
//        if (!menuService.checkMenuNameUnique(menu))
//        {
//            return error("新增菜单'" + menu.getMenuName() + "'失败，菜单名称已存在");
//        }
//        else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath()))
//        {
//            return error("新增菜单'" + menu.getMenuName() + "'失败，地址必须以http(s)://开头");
//        }
//        menu.setCreateBy(getUsername());
//        return toAjax(menuService.insertMenu(menu));
//    }


}
